-
-
Notifications
You must be signed in to change notification settings - Fork 68
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add new question type for DoenetML #458
base: main
Are you sure you want to change the base?
Add new question type for DoenetML #458
Conversation
fa87048
to
2a63dc1
Compare
One important note, this should not be merged as is, it breaks the default included MathJax in the other question types, I still need to fix that. |
Yes, not good. I've tested MathJax 4 and that appears to work just fine with all of the other components. |
|
||
def setup(app): | ||
app.add_directive("doenet", DoenetDirective) | ||
app.add_node(DoenetNode, html=(visit_hp_html, depart_hp_html)) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For clarity, should probably rename all "hp" and "hparsons" references.
…uestion-type-squashed
…uestion-type-squashed
This changeset adds a new question type for DoenetML activities. To learn more about DoenetML see https://www.doenet.org/
The code changes were based loosely on the hparsons question type, and there are some remaining artifacts from having copy-pasted code from those changes that are lingering, I should be cleaning those up soon.
I have added code the question authoring interface in the assignment editor to enable using the DoenetML 2 panel editor that can generate previews of question content all on the client without a trip to the server.
I would like to remove the need to include the question id in the source code of the question, right now it gets stuck in an XML comment, and I generate a random number automatically for authors.
I should probably open an issue to discuss that, because I would like to improve the general UX of authors needing to come up with their own unique keys for question ids if they choose to customize a question.
There are a few enhancements and cleanups that I still want to make to this work, but I wanted to get it posted so others could start reviewing it.
One thing that is not in it's final state is how I am referencing the built version of Doenet. I just have a hard-coded URL to a random personal repo I can push updates to easily. In the production version I think we likely want to put this artifact on the doenet.org server, or maybe some CDN service. We could consider pulling in Doenet as an NPM dependency (we haven't published this yet but we do intend to do it at some point) and integrating it with the runestone-interactives, but I'm thinking it might be better to allow those two things to live more independently and for us to be able to push out updates without needing to make the Runestone community approve a new release.